home *** CD-ROM | disk | FTP | other *** search
/ IRIX Installation Tools & Overlays 2002 May / SGI IRIX Installation Tools & Overlays 2002 May - Disc 3.iso / relnotes / license_dev / ch4.z / ch4
Text File  |  2002-04-11  |  2KB  |  133 lines

  1.  
  2.  
  3.  
  4.                                   - 1 -
  5.  
  6.  
  7.  
  8.        5.  _M_u_l_t_i_p_l_e__S_y_s_t_e_m__I_D_s
  9.  
  10.  
  11.  
  12.        5.1  _M_u_l_t_i_p_l_e__S_y_s_t_e_m__I_D_s
  13.  
  14.  
  15.        The Origin product line (eg. Origin 2000) has an expandable
  16.        modular architecture, and systems with more than one CPU
  17.        module will have multiple system IDs.  The FLEXlm licensing
  18.        library in this release of license_dev has been modified to
  19.        support multiple system ids.
  20.  
  21.        On a system with multiple system IDs, if a license can be
  22.        found for one of the system IDs returned by the system when
  23.        the application is started, the license is considered valid
  24.        and the application is enabled.
  25.  
  26.  
  27.        5.2  _G_e_t_t_i_n_g__t_h_e__M_u_l_t_i_p_l_e__S_y_s_t_e_m__I_D_s
  28.  
  29.  
  30.        Note that whether a system has a single or multiple system
  31.        IDs is transparent to the actual licensed application.  The
  32.        only time a user or developer needs to be concerned with the
  33.        number of system ids a system has is when the user is
  34.        providing the system id information to the vendor and when
  35.        the vendor issues a license for its product.
  36.  
  37.        Both sysinfo(1) and lmhostid(1) will return the system IDs
  38.        of all of the modules on the system.  Note that on single
  39.        system id systems, the command _s_y_s_i_n_f_o -_s is used to get the
  40.        system id.  On modular systems that can have multiple system
  41.        ids, the command _s_y_s_i_n_f_o and _s_y_s_i_n_f_o -_v will return a list
  42.        of system ids.
  43.  
  44.        Programmatically, the list of system ids can be acquired
  45.        using the syssgi(2) system call with the argument
  46.        SGI_NUM_MODULES and SGI_MODULE_INFO.  The following is a
  47.        source code example.
  48.  
  49.  
  50.  
  51.  
  52.  
  53.  
  54.  
  55.  
  56.  
  57.  
  58.  
  59.  
  60.  
  61.  
  62.  
  63.  
  64.  
  65.  
  66.  
  67.  
  68.  
  69.  
  70.                                   - 2 -
  71.  
  72.  
  73.  
  74.        #include <sys/syssgi.h>
  75.        #include <sys/systeminfo.h>
  76.  
  77.            int rc;
  78.            int num_sysids;
  79.            int index;
  80.            unsigned long sysid;
  81.            module_info_t mod_info;
  82.  
  83.            /* get the number of system IDs */
  84.            num_sysids = syssgi(SGI_NUM_MODULES);
  85.  
  86.            /* get the first sysid */
  87.            index = 0;
  88.            rc = syssgi(SGI_MODULE_INFO, index, &mod_info, sizeof(mod_info);
  89.            sysid = modeinfo.serial_num;
  90.  
  91.  
  92.  
  93.  
  94.  
  95.  
  96.  
  97.  
  98.  
  99.  
  100.  
  101.  
  102.  
  103.  
  104.  
  105.  
  106.  
  107.  
  108.  
  109.  
  110.  
  111.  
  112.  
  113.  
  114.  
  115.  
  116.  
  117.  
  118.  
  119.  
  120.  
  121.  
  122.  
  123.  
  124.  
  125.  
  126.  
  127.  
  128.  
  129.  
  130.  
  131.  
  132.  
  133.